P·C·L[處理二維/三維圖像和點雲數據的開源工程]

P·C·L[處理二維/三維圖像和點雲數據的開源工程]

Point Cloud Library (PCL) 是一個獨立的大型的處理二維/三維圖像和點雲數據的開源工程,由Willow Garage公司開發,起初只是以PR2機器人在3D數據感知算法處理上速度更快為目標,後來才漸漸發展為一個獨立的函式館。PCL包含了許多先進算法,比如濾波,特徵估計,表面重建,模型擬合和分割等等。

因為PCL是開源的,所以無論是商用還是研究都是免費的;

贊助商有Open Perception, Willow Garage, NVIDIA, Google, Toyota, Trimble, Urban Robotics, Honda Research Institute, Sandia, Dinast, Optronic, Ocular Robotics, Velodyne, Fotonic, and MKE.

PCL歷史

構成現在PCL算法基礎的第一個算法,是由Dr. Radu Bogdan Rusu在德國慕尼黑工業大學讀博士期間開發的,後來在2009年底由Willow Garage公司進一步開發完成。 Dr. Rusu的工作的目的是要為三維點雲數據處理的研究及套用,建立出一個共同的基礎架構。自從2010年3月開始,具有模組化庫的想法開始初具雛形,並已經寫了大量的工具,並作為機器人作業系統(ROS)框架的一部分,來幫助PR2機器人在複雜的3D環境中處理和導航。就這樣,研究工作繼續進行,但直到2010年11月才作出決定,開始建立一個稱為PCL的新的獨立項目,作為一個整體這將有利於提高3D領域的研究。

在2011年3月底,PCL邁出了第一步,作為一個獨立項目推出了自己網頁域名,並迅速得到如NVIDIA, Google, Toyota, and Trimble等公司的資金支持,之後僅僅三個月後,即在2011年6月,就得到了全世界超過120個開發者和貢獻者的支持,在六大洲,擁有多達30個不同的大學,研究機構,商業公司對這個項目做著貢獻。

今天,PCL繼續發展,並且凝聚了全世界許多不同的研究人員和工程師在在同一框架下研究3D感知。

PCL版本

截至到目前,PCL的最新版本為 PCL 1.7.1

PCL1.7.1(released on 2013.10.20)

pcl-- v1.7.0 (released on 2013.06.23)

pcl-- v1.6.0 (released on 2012.07.17)

pcl-- v1.5.1 (released on 2012.02.22)

pcl-- v1.4.0 (released on 2011.12.31)

pcl--v1.3.1 (released on 2011.11.30)

pcl--v1.3.0 (released on 2011.10.31)

pcl--v1.2.0 (released on 2011.09.30)

pcl-- v1.1.1 (released on 2011.08.31)

pcl--v1.1.0 (released on 2011.07.18)

pcl--v1.0.1 (released on 2011.06.29)

pcl--v1.0.0 (released on 2011.05.11)

pcl--trunk (latest unstable devel - updated daily)

模組

pcl_filters 去除噪點

pcl_features 三維特徵提取

pcl_registration 將點雲融合到一個全局模型中

pcl_kdtree 基於FLANN的kdtree實現最近鄰搜尋

pcl_octree 基於八叉樹實現最近鄰搜尋

pcl_segmentation 分割點雲

pcl_sample_consensus 對點雲進行擬合(線、面、園、球、柱面、平行線),擬合算法包括:

* SAC_RANSAC - RANdom SAmple Consensus

* SAC_LMEDS - Least Median of Squares

* SAC_MSAC - M-Estimator SAmple Consensus

* SAC_RRANSAC - Randomized RANSAC

* SAC_RMSAC - Randomized MSAC

* SAC_MLESAC - Maximum LikeLihood Estimation SAmple Consensus

* SAC_PROSAC - PROgressive SAmple Consensus

pcl_surface 從三維掃描重建表面,可以是mesh/convex hull/concave hull

pcl_range_image 深度圖,由kinect獲取後可轉換為點雲

pcl_io 輸入輸出,PCD (Point Cloud Data) 檔案的讀寫,OpenNI的接口(沒有實現微軟SDK的接口)

pcl_visualization 類似於OpenCV中highgui的作用,基於VTK實現三維可視化(VTK是一個極其龐大的庫)

PCL安裝

Windows下VS2010可以直接下載傻瓜安裝包

其他的IDE比較麻煩,需要下原始碼,以及依賴庫

必需的庫有:

boost

Eigen

FLANN

可選項有:

VTK,用於pcl_visualization

QHull,用於pcl_surface

OpenNI,用於pcl_io

CUDA

Ubuntu下ROS安裝

$sudo apt-get install ros-fuerte-pcl

相關詞條

熱門詞條

聯絡我們